package com.chenju.invokechainservice.service;

import com.chenju.invokechainservice.adapter.MethodNodeAdapter;
import com.chenju.invokechainservice.domain.DiffMethodDetailEntity;
import com.chenju.invokechainservice.domain.DiffMethodEntity;
import com.chenju.invokechainservice.domain.TMethodNode;
import com.github.javaparser.ast.CompilationUnit;
import com.github.javaparser.ast.Modifier;
import com.github.javaparser.ast.NodeList;
import com.github.javaparser.ast.body.MethodDeclaration;
import com.github.javaparser.ast.body.Parameter;
import com.github.javaparser.ast.expr.AnnotationExpr;
import com.github.javaparser.ast.type.ReferenceType;

import java.util.List;


public interface TMethodNodeService {
    TMethodNode save(TMethodNode node);

    TMethodNode findByName(String name);

    TMethodNode findByNameAndDesc(String name, String desc);

    TMethodNode parseMethod(TMethodNode node, MethodNodeAdapter mna);

    TMethodNode parseMethodInvoke(TMethodNode node, MethodNodeAdapter mna);

}
